思元的開發筆記

關於 web service, unity, blogger 等軟體工程筆記

Golang server + WebSocket protocol + Unity C# client

研究資料傳輸方案,運用在工作專案中可能性的筆記。嘗試使用 Golang 開發伺服器 (Server),經由 WebSocket protocol 與使用 Unity C# 開發的用戶端 (Client) 串接。實作一個的應答伺服器 (Echo server),用戶端傳什麼給伺服器,伺服器就回應什麼給用戶端。

Create windows service using NSSM

最近在 Windows server 上部署網路應用程式 (Windows program),就直接用服務 (Windows service) 方式來部屬吧。如何建置 Windows service 感覺就相當麻煩以及複雜,直到搜尋到 NSSM 這套好用的工具,能夠快速建立 Windows services。記錄操作筆記。

Script GUIDs Remapping in Unity

需求,大量修改專案中的 GUIDs,並且保證 Assets 中參考不會遺失 (Reference missing)。工作上所遇到的問題,並且整理其解決方式。多個遊戲專案以及遊戲大廳加入後的設計調整,遊戲大廳使用 Assetbundles 加載,使用 Symbolic link 引用其他遊戲的程式碼編譯,調整遊戲專案中的 Script GUIDs。最後分享完整程式碼。

Integration of Jenkins and GitBlit

自從上次完成建置好第一個版本的 CI Server,拿來自動整合並建置專案 (build project)。每天會自動定時排程作業 (jobs),自動建置一版,但當專案趨近完成後,好幾個禮拜都沒有再更新還自動建置,有點浪費資源。有沒有辦法當使用者 (user) 向 Git server 上傳版本 (push) 後,讓 Git server 主動發通知給 Jenkins,然後自動執行建置呢?最終時做出解決方案,整理成這篇筆記。

Unity5 with Photon

在前次參加 Unity with Photon 的說明會的後,按照官方部落格的教學文章,嘗試弄一次連線測試的專案,並且記錄製作筆記。註冊 Photon 取得 App-ID,下載 Photon Unity Networking,以及準備好美術資源。撰寫 Photon Manager 以及角色控制,建立 Photon View 同步資料。專案原始碼放置在 Github 上,並且提供 WebGL Demo。

Golang Taipei Gathering #17

忘記什麼原因想去 Golang Taipei Gathering,自從上次錯過九月的 Golang 聚會後,便開始密切注意十月的聚會。沒想到開放報名的當天,只是因為工作太忙,晚上才匆匆到報名網頁想要,就已經沒有一般票了。稍微跟主辦人 Evan Lin 聊一下,想說能不能拿到公關票,結果變成報名閃電秀 (Lighting Talk),得準備個幾分鐘上台講講工作使用 Golang 的東西,以來換取入場券啊。十月的聚會有一個主題演講,外加三個包含自己共三個閃電秀。筆記這次演講內容以及一些感想,gRPC,Golang for Mobile,以及 Go with Docker。

Blogger 使用標籤模式瀏覽側邊欄小工具

之前使用手機瀏覽他人的部落格時發現的設計,將側邊欄小工具 (Widget),例如熱門文章 (Popular posts)、網誌存檔 (Blog archive) 以及關於我 (About me) 等等,使用標籤 (Tabs) 整合在同一個區塊,點選標籤來切換顯示對應的小工具內容,而不是將小工具垂直往頁尾排列,造成頁面瀏覽需要滑很久才能到頁尾。經過一些嘗試總算是完成這樣的功能,這篇文章紀錄從不知道怎麼開始,到最後獨立完成的過程。

Blogger 側邊欄獨立一頁面,並使用 iframe 引用

原先的目的是希望 Google 搜尋不要把側邊欄的內容,編列成該頁的索引關鍵字,嘗試使用 iframe 導入側邊欄網頁,標示側邊欄網頁不可被索引的方式來達成。記錄如何製作,以及實做後的心得結論。

Unity Singleton Pattern 單例模式

看到社團有人在問,Unity 場景切換後怎麼拿到上個場景的資料?嗯,全域變數即可以處理這件事情,關於全域變數,便直接想到 Singleton 這設計模式,建立一個唯一存在的物件實體 (Instance),又可以讓全部物件看到操作。整理一下範例,包含單純存放資料以及繼承 MonoBehaviour 的建置 Singleton Pattern 範例。

Blogger 首頁僅顯示兩篇文章的問題與解決

最近發布三篇旅行遊記後,發現原先設定首頁顯示十筆文章,怎麼突然變成只有兩筆呢。經過一番搜尋後,在線上論壇 Blogger Help Forum 中,發現許多人遇到同樣的問題,從論壇的回應中了解到 Blogger 分頁機制,並且在最後找到的方法解決。

Photon 與 Unity 完美結合應用分享會 筆記心得

參加 Photon 台灣代理商所辦的分享會活動,了解 Photon Engine 對於 Unity 網路伺服器開發會多麼方便。文章提到 Photon Cloud & Photon Server 的該場分享會的筆記以及個人認知。

Unity WebRequest

在 Unity 建立 Web Request,向指定網址資源送出 HTTP 要求 (Request),等待遠端伺服器回應 (Response),抓取回應得資料內容 (Content) 進行處理。可以使用 UnityEngine.WWW 或是 System.Net.HttpRequest 來達到,介紹 Unity5.2 推出的 UnityWebRequest 類別來達成 HTTP 資源存取,並且整理一些使用範例。

Unity Editor: Apply multiple prefabs

Unity Editor 中小工具 (test on Unity5.3.5),一次操作對在場景中每一個選取的 Prefab objects,執行 Apply 將修改寫入到 Prefab 資料中。分享程式碼,介紹存在的議題,以及為什麼以及如何寫出這段程式碼,其中將藉由 ILSpy 這工具來查詢 Unity Editor 的程式碼。

HTTP 淺談,使用 PostMan 操作

HTTP 簡單介紹,使用 Postman 工具操作來了解實質 Request 以及 Response。HTTP 傳輸的資料結構,初始行 (Start line),標頭 (Header),以及內容 (Content or Body) ,文中再進一步介紹細節以及範例。